home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 18 / CU Amiga Magazine's Super CD-ROM 18 (1997)(EMAP Images)(GB)[!][issue 1998-01].iso / CUCD / Online / SANA2Meter / Source / constdata.c < prev    next >
Encoding:
C/C++ Source or Header  |  1996-06-02  |  6.9 KB  |  157 lines

  1. /*
  2. ** $VER: constdata.c 1.0 (25 Apr 1996)
  3. **
  4. ** (C) Copyright 1996 Marius Gröger
  5. **     All Rights Reserved
  6. **
  7. ** $HISTORY:
  8. **
  9. ** 25 Mar 1996 : 001.000 :  created
  10. */
  11.  
  12. /*F*/ /* includes */
  13. #include <gtlayout/gtlayout.h>
  14. #include <exec/libraries.h>
  15. #include <exec/devices.h>
  16. #include <exec/memory.h>
  17. #include <exec/io.h>
  18. #include <workbench/startup.h>
  19. #include <utility/tagitem.h>
  20. #include <netinclude:devices/sana2.h>
  21. #include "compiler.h"
  22. #include "debug.h"
  23. #define CATCOMP_NUMBERS
  24. #include "locale.h"
  25. #include "sana2meter.h"
  26. #include <stddef.h>
  27. /*E*/
  28.  
  29. /*F*/ /* revision */
  30. PRIVATE const UBYTE version[]=VERSTAG;
  31. /*E*/
  32.  
  33. /*F*/ /* CPU */
  34. const UBYTE CPUTXT[] =
  35. #if (_M68040 == 1)
  36. "68040+";
  37. #elif (_M68030 == 1) || (_M68020 == 1)
  38. "68020+";
  39. #else
  40. "68000+";
  41. #endif
  42.  
  43. /*E*/
  44.  
  45. /*F*/ /* watches */
  46.  
  47. PUBLIC const ULONG ttmaskflags[] =
  48. {
  49.    TTF_INITIAL_OPACKETS,
  50.    TTF_INITIAL_IPACKETS,
  51.    TTF_INITIAL_OBYTES,
  52.    TTF_INITIAL_IBYTES,
  53.    TTF_INITIAL_DPACKETS,
  54.    TTF_INITIAL_OCPS,
  55.    TTF_INITIAL_ICPS
  56. };
  57.  
  58. /***************************************************************************/
  59.  
  60. #define OFF_S2DQ(member) offsetof(struct Sana2DeviceQuery, member)
  61. #define OFF_S2DS(member) offsetof(struct Sana2DeviceStats, member)
  62. #define OFF_S2PTS(member) offsetof(struct TrackType, member)
  63.  
  64. PUBLIC const struct NewWatch ttwatches[] =
  65. {
  66.  { MEMBER_TRACKTYPE,   NULL,   NULL,        TXT_TTOPACKETS, OFF_S2PTS(tt_Stats.PacketsSent),    WF_ACTIVE },
  67.  { MEMBER_TRACKTYPE,   NULL,   NULL,        TXT_TTIPACKETS, OFF_S2PTS(tt_Stats.PacketsReceived),WF_ACTIVE },
  68.  { MEMBER_TRACKTYPE,   NULL,   NULL,        TXT_TTOBYTES,   OFF_S2PTS(tt_Stats.BytesSent),      WF_ACTIVE },
  69.  { MEMBER_TRACKTYPE,   NULL,   NULL,        TXT_TTIBYTES,   OFF_S2PTS(tt_Stats.BytesReceived),  WF_ACTIVE },
  70.  { MEMBER_TRACKTYPE,   NULL,   NULL,        TXT_TTDPACKETS, OFF_S2PTS(tt_Stats.PacketsDropped), WF_ACTIVE },
  71.  { MEMBER_TRACKTYPE,   NULL,   NULL,        TXT_TTOCPS,     OFF_S2PTS(tt_OCPS),                 WF_ACTIVE },
  72.  { MEMBER_TRACKTYPE,   NULL,   NULL,        TXT_TTICPS,     OFF_S2PTS(tt_ICPS),                 WF_ACTIVE },
  73.  { MEMBER_NONE }
  74. };
  75.  
  76. PUBLIC const struct NewWatch stdwatches[] =
  77. {
  78.  { MEMBER_GLOBALSTATS,  "op",  "opackets",  TXT_OPACKETS,   OFF_S2DS(PacketsSent),          WF_ACTIVE             },
  79.  { MEMBER_GLOBALSTATS,  "ip",  "ipackets",  TXT_IPACKETS,   OFF_S2DS(PacketsReceived),      WF_ACTIVE             },
  80.  { MEMBER_GLOBALSTATS,  "bad", "baddata",   TXT_BADDATA,    OFF_S2DS(BadData),              WF_ACTIVE             },
  81.  { MEMBER_GLOBALSTATS,  "ovr", "overruns",  TXT_OVERRUNS,   OFF_S2DS(Overruns),             WF_ACTIVE             },
  82.  { MEMBER_GLOBALSTATS,  "uwn", "unknown",   TXT_UNKNOWN,    OFF_S2DS(UnknownTypesReceived), WF_ACTIVE             },
  83.  { MEMBER_GLOBALSTATS,  "rcf", "reconfigs", TXT_RECONFIGS,  OFF_S2DS(Reconfigurations),     0                     },
  84.  { MEMBER_DEVICEQUERY,  "mtu", "mtu",       TXT_MTU,        OFF_S2DQ(MTU),                  WF_ACTIVE | WF_STATIC },
  85.  { MEMBER_DEVICEQUERY,  "bps", "bps",       TXT_BPS,        OFF_S2DQ(BPS),                  WF_ACTIVE | WF_STATIC },
  86.  { MEMBER_DEVICEQUERY,  "hw",  "hwtype",    TXT_HWTYPE,     OFF_S2DQ(HardwareType),         WF_ACTIVE | WF_STATIC },
  87.  { MEMBER_SPECIALSTATS, "s1",  "special1",  0,              0,                              WF_NOLABEL            },
  88.  { MEMBER_SPECIALSTATS, "s2",  "special2",  0,              0,                              WF_NOLABEL            },
  89.  { MEMBER_SPECIALSTATS, "s3",  "special3",  0,              0,                              WF_NOLABEL            },
  90.  { MEMBER_SPECIALSTATS, "s4",  "special4",  0,              0,                              WF_NOLABEL            },
  91.  { MEMBER_SPECIALSTATS, "s5",  "special5",  0,              0,                              WF_NOLABEL            },
  92.  { MEMBER_SPECIALSTATS, "s6",  "special6",  0,              0,                              WF_NOLABEL            },
  93.  { MEMBER_SPECIALSTATS, "s7",  "special7",  0,              0,                              WF_NOLABEL            },
  94.  { MEMBER_SPECIALSTATS, "s8",  "special8",  0,              0,                              WF_NOLABEL            },
  95.  { MEMBER_SPECIALSTATS, "s9",  "special9",  0,              0,                              WF_NOLABEL            },
  96.  { MEMBER_SPECIALSTATS, "s10", "special10", 0,              0,                              WF_NOLABEL            },
  97.  { MEMBER_SPECIALSTATS, "s11", "special11", 0,              0,                              WF_NOLABEL            },
  98.  { MEMBER_SPECIALSTATS, "s12", "special12", 0,              0,                              WF_NOLABEL            },
  99.  { MEMBER_SPECIALSTATS, "s13", "special13", 0,              0,                              WF_NOLABEL            },
  100.  { MEMBER_SPECIALSTATS, "s14", "special14", 0,              0,                              WF_NOLABEL            },
  101.  { MEMBER_SPECIALSTATS, "s15", "special15", 0,              0,                              WF_NOLABEL            },
  102.  { MEMBER_SPECIALSTATS, "s16", "special16", 0,              0,                              WF_NOLABEL            },
  103.  { MEMBER_SPECIALSTATS, "s17", "special17", 0,              0,                              WF_NOLABEL            },
  104.  { MEMBER_SPECIALSTATS, "s18", "special18", 0,              0,                              WF_NOLABEL            },
  105.  { MEMBER_SPECIALSTATS, "s19", "special19", 0,              0,                              WF_NOLABEL            },
  106.  { MEMBER_SPECIALSTATS, "s20", "special20", 0,              0,                              WF_NOLABEL            },
  107.  { MEMBER_NONE }
  108. };
  109. /*E*/
  110.  
  111. /*F*/ /* commandline parsing */
  112. PRIVATE const UBYTE TEMPLATE[] = "DEV=DEVICE,"            \
  113.                                  "U=UNIT/K/N,"            \
  114.                                  "S=SHOW/K,"              \
  115.                                  "TT=TRACKTYPE/K,"        \
  116.                                  "FORCE/S,"               \
  117.                                  "OFF/S,"                 \
  118.                                  "FROM/K,"                \
  119.                                  "RF=REFRESH/K/N,"        \
  120.                                  "L=LIST/S,"              \
  121.                                  "FONT=FONTNAME/K,"       \
  122.                                  "FONTSIZE/K/N,"          \
  123.                                  "TOP/K/N,"               \
  124.                                  "LEFT/K/N,"              \
  125.                                  "SCREEN=PUBSCREEN/K,"    \
  126.                                  "NA=NOACTIVATE/S,"       \
  127.                                  "W2B=WINDOWTOBACK/S,"    \
  128.                                  "WINDOW/K";              \
  129.  
  130. enum
  131. {
  132.    ARG_DEVICE,
  133.    ARG_UNIT,
  134.    ARG_SHOW,
  135.    ARG_TRACKTYPE,
  136.    ARG_FORCE,
  137.    ARG_OFF,
  138.    ARG_FROM,
  139.    ARG_REFRESH,
  140.    ARG_LIST,
  141.    ARG_FONT,
  142.    ARG_FONTSIZE,
  143.    ARG_TOP,
  144.    ARG_LEFT,
  145.    ARG_PUBSCREEN,
  146.    ARG_NOACTIVATE,
  147.    ARG_WINDOWTOBACK,
  148.    ARG_WINDOW,
  149.    ARG_COUNT
  150. };
  151.  
  152. PUBLIC const UBYTE DEF_CONSOLE[] = "CON:0/0/400/200/SANA-II Meter Tool Output/AUTO/WAIT/CLOSE";
  153. PUBLIC const UBYTE EMAIL_AUTHOR[] = "mag@sysgo.de";
  154. /*E*/
  155.  
  156.  
  157.